/**
 * Generate code from /{{projectName}}-core/src/main/java/{{packageName}}/core/{{modules}}/mapping/{{entities}}InheritMapping.java.hbs
 */
package cn.ibizlab.core.ad.mapping;

import org.mapstruct.*;
import cn.ibizlab.core.ad.domain.SysOrganizationalRole;
import cn.ibizlab.core.ad.domain.SysGroupOfNames;
import java.util.List;

/**
 * 用户组继承映射[SysOrganizationalRole]
 *
 * @author generator
 */
@Mapper(componentModel = "spring", uses = {})
public interface SysOrganizationalRoleInheritMapping {

    /**
     * 转换SysGroupOfNames
     * 
     * @param sysOrganizationalRole
     * @return
     */
    @Mappings({
            @Mapping(target ="focusNull",ignore = true),
            @Mapping(source ="id",target = "id"),
            @Mapping(source ="organizationalUnitId",target = "parentId"),
            @Mapping(source ="organizationId",target = "organizationId"),
            @Mapping(source ="sort",target = "sort"),
            @Mapping(source ="dc",target = "dc"),
            @Mapping(source ="description",target = "description"),
            @Mapping(source ="departmentId",target = "departmentId"),
            @Mapping(source ="enabled",target = "enabled"),
            @Mapping(source ="name",target = "name"),
    })
    SysGroupOfNames toSysGroupOfNames(SysOrganizationalRole sysOrganizationalRole);

    /**
     * 转换SysGroupOfNames
     * 
     * @param sysGroupOfNames
     * @return
     */
    @Mappings({
            @Mapping(target ="focusNull",ignore = true),
            @Mapping(source ="id",target = "id"),
            @Mapping(source ="parentId",target = "organizationalUnitId"),
            @Mapping(source ="organizationId",target = "organizationId"),
            @Mapping(source ="sort",target = "sort"),
            @Mapping(source ="dc",target = "dc"),
            @Mapping(source ="description",target = "description"),
            @Mapping(source ="departmentId",target = "departmentId"),
            @Mapping(source ="enabled",target = "enabled"),
            @Mapping(source ="name",target = "name"),
    })
    SysOrganizationalRole toSysOrganizationalRole(SysGroupOfNames sysGroupOfNames);

    /**
     * List SysOrganizationalRole 对象转换
     *
     * @param list
     * @return
     */
    List<SysGroupOfNames> toSysGroupOfNames(List<SysOrganizationalRole> list);

    /**
     * List SysGroupOfNames 对象转换
     *
     * @param list
     * @return
     */
    List<SysOrganizationalRole> toSysOrganizationalRole(List<SysGroupOfNames> list);

}
